package tech.aistar.config;

import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.http.HttpSession;
import org.springframework.web.servlet.HandlerInterceptor;
import tech.aistar.entity.UserDTO;
import tech.aistar.util.Constant;
import tech.aistar.util.UserDTOThreadLocal;

/**
 * 本类用来演示:
 *
 * @author jyz
 * @date 2023/3/11 22:48:45
 */

public class LoginIntercept {
        //implements HandlerInterceptor {
//    @Override
//    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//        // 1. 获取session
//        HttpSession session = request.getSession();
//        // 2. 获取用户信息
//        UserDTO userDTO = (UserDTO) session.getAttribute(Constant.LOGIN_USER);
//        // 3. 判断用户是否存在
//        if(userDTO == null){
//            // 4. 不存在 -->  则拦截，返回401状态
//            response.setStatus(401);
//            return false;
//        }
//        // 5. 存在 -->  将其保存在ThreadLocal中
//        UserDTOThreadLocal.save(userDTO);
//        // 6. 放行
//        return true;
//    }
}
